This invention relates generally to electronic musical instruments and, more particularly, to an improved tone source apparatus for constructing musical waveforms on the basis of a set of instructions stored in a memory.
For purposes of the present invention, electronic musical instruments may be categorized as comprising one of two general types. The older of these two types consists of those instruments which use various types of oscillators or clock sources as the ultimate source of a musical waveform. In instruments of this type the spectral characteristics (e.g. harmonic content, etc.) of the generated waveform is inherently limited by the electrical characteristics of the source and of various modification circuits which are used to filter the waveform. The second type of musical instrument, which is of considerably more recent vintage, uses a suitably programmed memory as the ultimate source of the musical waveforms. In instruments of the latter type, a musical waveform is typically stored in a digital memory in amplitude sampled form and read out of the memory at a constant rate in response to an address counter whereupon it is converted to an analog form by a digital to analog converter. Although this approach allows considerable flexibility in generating musical waveforms, in that it permits any waveform to be produced by storing a representation thereof in terms of a succession of spaced amplitude samples, it is also subject to the disadvantage of excessive demands for memory capacity under certain circumstances. Thus, if the waveform to be generated is of long duration, from several to as many as thirty seconds, then the number of stored amplitude samples is too great to be stored economically, and without special techniques, the memory cost becomes prohibitive.
A technique used heretofore, see U.S. Pat. No. 4,023,454 to Obayashi et al, for reducing this memory capacity requirement involves dividing a musical waveform into a plurality of segments and storing a respective set of instructions at each of a plurality of memory addresses from which the waveform segments may be regenerated in approximate form. More specifically, in the Obayashi et al apparatus, each segment of a waveform is represented in memory by the coefficients and constants necessary to define an nth degree equation approximating the respective waveform segment. A linear approximation of the waveform segments is produced by storing the data for defining a first degree equation while variously contoured approximations of the waveform segments are produced by storing data for defining higher degree equations. Regardless of the degree of the equation stored in memory, each generated waveform segment is produced by multiplying the stored equation coefficients by a constantly increasing time factor and then appropriately combining the individual products with the stored constant to produce a stepped signal approximating the waveform segment. It will be appreciated that the memory capacity requirements in such a system may be significantly less than in an amplitude sampled system since one set of stored instructions may be used to define an entire waveform segment rather than a single amplitude sample.